﻿<phone:PhoneApplicationPage
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone"
    xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:Custom="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity" xmlns:GalaSoft_MvvmLight_Command="clr-namespace:GalaSoft.MvvmLight.Command;assembly=GalaSoft.MvvmLight.Extras.WP7" 
    xmlns:ASPItalia_ModelVirtualCasting_WP7_Converter="clr-namespace:ASPItalia.ModelVirtualCasting.WP7.Converter" 
    x:Class="ASPItalia.ModelVirtualCasting.WP7.MainPage"
    mc:Ignorable="d" d:DesignWidth="480" d:DesignHeight="768"
    SupportedOrientations="Portrait" Orientation="Portrait"
    shell:SystemTray.IsVisible="True" d:DataContext="{d:DesignData /SampleData/MainPageViewModelSampleData.xaml}">
	<phone:PhoneApplicationPage.Resources>
		<ASPItalia_ModelVirtualCasting_WP7_Converter:PhotoConverter x:Key="PhotoConverter"/>
		<DataTemplate x:Key="ModelTemplate">
			<Grid>
				<Grid.ColumnDefinitions>
					<ColumnDefinition Width="0.371*"/>
					<ColumnDefinition Width="0.629*"/>
				</Grid.ColumnDefinitions>
				<Image Source="{Binding Multimedia[0].FileName, Converter={StaticResource PhotoConverter}}" Stretch="UniformToFill" Margin="{StaticResource PhoneMargin}"/>
				<StackPanel d:LayoutOverrides="Width, Height" Grid.ColumnSpan="2" Grid.Column="1" Margin="{StaticResource PhoneMargin}">
					<TextBlock Text="{Binding EyeColor}" FontFamily="{StaticResource PhoneFontFamilyNormal}" FontSize="{StaticResource PhoneFontSizeExtraLarge}" FontWeight="Bold"/>
					<TextBlock Text="{Binding FirstName}"/>
					<TextBlock Text="{Binding HairColor}"/>
					<TextBlock Text="{Binding ID}"/>
					<TextBlock Text="{Binding LastName}"/>
					<TextBlock Text="{Binding ResidenceCity}"/>
				</StackPanel>
			</Grid>
		</DataTemplate>
		<Style x:Key="ListBoxItemStyle1" TargetType="ListBoxItem">
			<Setter Property="Background" Value="Transparent"/>
			<Setter Property="BorderThickness" Value="0"/>
			<Setter Property="BorderBrush" Value="Transparent"/>
			<Setter Property="Padding" Value="0"/>
			<Setter Property="HorizontalContentAlignment" Value="Left"/>
			<Setter Property="VerticalContentAlignment" Value="Top"/>
			<Setter Property="Template">
				<Setter.Value>
					<ControlTemplate TargetType="ListBoxItem">
						<Border x:Name="LayoutRoot" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" HorizontalAlignment="{TemplateBinding HorizontalAlignment}" VerticalAlignment="{TemplateBinding VerticalAlignment}" Margin="{StaticResource PhoneMargin}">
							<VisualStateManager.VisualStateGroups>
								<VisualStateGroup x:Name="CommonStates">
									<VisualState x:Name="Normal"/>
									<VisualState x:Name="MouseOver"/>
									<VisualState x:Name="Disabled">
										<Storyboard>
											<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Background" Storyboard.TargetName="LayoutRoot">
												<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource TransparentBrush}"/>
											</ObjectAnimationUsingKeyFrames>
											<DoubleAnimation Duration="0" To=".5" Storyboard.TargetProperty="Opacity" Storyboard.TargetName="ContentContainer"/>
										</Storyboard>
									</VisualState>
								</VisualStateGroup>
								<VisualStateGroup x:Name="SelectionStates">
									<VisualState x:Name="Unselected"/>
									<VisualState x:Name="Selected">
										<Storyboard>
											<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Foreground" Storyboard.TargetName="ContentContainer">
												<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneAccentBrush}"/>
											</ObjectAnimationUsingKeyFrames>
										</Storyboard>
									</VisualState>
								</VisualStateGroup>
							</VisualStateManager.VisualStateGroups>
							<ContentControl x:Name="ContentContainer" ContentTemplate="{TemplateBinding ContentTemplate}" Content="{TemplateBinding Content}" Foreground="{TemplateBinding Foreground}" Margin="{TemplateBinding Padding}" HorizontalContentAlignment="Stretch" VerticalContentAlignment="Stretch"/>
						</Border>
					</ControlTemplate>
				</Setter.Value>
			</Setter>
		</Style>
	</phone:PhoneApplicationPage.Resources>

	<!--Sample code showing usage of ApplicationBar-->
	<!--<phone:PhoneApplicationPage.ApplicationBar>
        <shell:ApplicationBar IsVisible="True" IsMenuEnabled="True">
            <shell:ApplicationBarIconButton IconUri="/Images/appbar_button1.png" Text="Button 1"/>
            <shell:ApplicationBarIconButton IconUri="/Images/appbar_button2.png" Text="Button 2"/>
            <shell:ApplicationBar.MenuItems>
                <shell:ApplicationBarMenuItem Text="MenuItem 1"/>
                <shell:ApplicationBarMenuItem Text="MenuItem 2"/>
            </shell:ApplicationBar.MenuItems>
        </shell:ApplicationBar>
    </phone:PhoneApplicationPage.ApplicationBar>-->

	<phone:PhoneApplicationPage.FontFamily>
		<StaticResource ResourceKey="PhoneFontFamilyNormal"/>
	</phone:PhoneApplicationPage.FontFamily>
	<phone:PhoneApplicationPage.FontSize>
		<StaticResource ResourceKey="PhoneFontSizeNormal"/>
	</phone:PhoneApplicationPage.FontSize>
	<phone:PhoneApplicationPage.Foreground>
		<StaticResource ResourceKey="PhoneForegroundBrush"/>
	</phone:PhoneApplicationPage.Foreground>

	<!--LayoutRoot is the root grid where all page content is placed-->
	<Grid x:Name="LayoutRoot" Background="Transparent">
		<Grid.RowDefinitions>
			<RowDefinition Height="Auto"/>
			<RowDefinition Height="*"/>
		</Grid.RowDefinitions>

		<!--TitlePanel contains the name of the application and page title-->
		<Image Source="Logo.png" Stretch="UniformToFill" Grid.Row="1" Opacity="0.175"/>
		<!--TitlePanel contains the name of the application and page title-->
		<StackPanel x:Name="TitlePanel" Grid.Row="0" Margin="12,17,0,28">
			<TextBlock x:Name="ApplicationTitle" Text="mvc" Style="{StaticResource PhoneTextNormalStyle}"/>
			<TextBlock x:Name="PageTitle" Text="model search" Margin="9,-7,0,0" Style="{StaticResource PhoneTextTitle1Style}"/>
		</StackPanel>

		<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
			<Grid.RowDefinitions>
				<RowDefinition Height="Auto"/>
				<RowDefinition Height="*"/>
			</Grid.RowDefinitions>

			<StackPanel Orientation="Horizontal">
				<TextBlock Text="modella" VerticalAlignment="Center" />
				<TextBox Width="280" Text="{Binding SearchText, Mode=TwoWay}" />
				<Button Content="cerca" >
					<Custom:Interaction.Triggers>
						<Custom:EventTrigger EventName="Click">
							<GalaSoft_MvvmLight_Command:EventToCommand Command="{Binding SearchCommand}" MustToggleIsEnabledValue="True"/>
						</Custom:EventTrigger>
					</Custom:Interaction.Triggers>
				</Button>
			</StackPanel>

			<ProgressBar Grid.Row="1" Visibility="{Binding SearchInProgessVisibility}" />

			<ListBox Grid.Row="1" ItemTemplate="{StaticResource ModelTemplate}" ItemsSource="{Binding Models}" Grid.RowSpan="2" ItemContainerStyle="{StaticResource ListBoxItemStyle1}" HorizontalContentAlignment="Stretch" SelectedItem="{Binding SelectedModel, Mode=TwoWay}" />
		</Grid>
	</Grid>

</phone:PhoneApplicationPage>